package com.huike.clues.domain.dto.my;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.huike.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;

import java.time.LocalDateTime;
import java.util.Date;

/**
 * 字典查询DTO
 * 用于接收字典相关的查询参数
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class DictQueryDTO extends BaseEntity {

    /**
     * 字典名称（必填）
     */
    private String dictName;

    /**
     * 字典标签
     */
    private String dictLabel;
    /**
     * 字典类型（必填）
     */
    private String dictType;

    /** 创建时间 */
    @ApiModelProperty("创建时间")
    @TableField(fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /**
     * 创建开始时间（非必填，参数格式为 params[beginTime]）
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date beginTime;

    /**
     * 创建结束时间（非必填，参数格式为 params[endTime]）
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date endTime;

    /**
     * 状态（非必填，0正常 1停用）
     */
    private String status;
}